package com.wh1200.mybatis.xmlless.model.dto

import com.wh1200.mybatis.xmlless.model.base.BaseClassWrapper
import com.wh1200.mybatis.xmlless.util.ClassWrapperProvider
import java.lang.reflect.Parameter
import java.lang.reflect.Type

/**
 *
 * @author 吴昊
 * @date 2024/1/17 21:51
 * @since v0.0.0
 * @version 1.0
 */
class DefaultParameterWrapper(parameter: Parameter) : DefaultAnnotatedElementWrapper<Parameter>(parameter) {

  override fun getName(): String {
    return element.name
  }

  override fun getType(): BaseClassWrapper {
    return ClassWrapperProvider.createClassWrapper(element.type)
  }

  override fun getGenericType(): Type {
    return element.parameterizedType
  }

}
